package com.dragon.modules.yuegou.entity.coupon;

import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 随机券信息实体类<br>
 * 对应的表为：coup_coupon_template_random<br>
 * 
 * @author pbuilder generated
 * @date 2020-07-09 15:00:59
 * @company sgy
 * @version 2.0
 */
@TableName("coup_coupon_template_random")
@ApiModel(description = "随机券信息")
public class CouponTemplateRandomEntity {

    /**  */
	protected String id;

    /** 券模板ID */
	@ApiModelProperty("券模板ID")
	protected String couponTemplateId;

    /** 开始金额 */
	@ApiModelProperty("开始金额")
	protected BigDecimal beginFee;

    /** 结束金额 */
	@ApiModelProperty("结束金额")
	protected BigDecimal endFee;

    /** 随机券总和最高金额限制 */
	@ApiModelProperty("随机券总和最高金额限制")
	protected BigDecimal limitMaxFee;

    /** 当前已领取总金额 */
	@ApiModelProperty("当前已领取总金额")
	protected BigDecimal nowFee;

    /** 随机券总和最高数量限制 */
	@ApiModelProperty("随机券总和最高数量限制")
	protected Integer limitMaxNum;

    /** 当前已领取总数量 */
	@ApiModelProperty("当前已领取总数量")
	protected Integer nowNum;

    /** 是否有效：0-false失效、1-true正常【当随机段超出领取数量或最高金额时失效】 */
	@ApiModelProperty("是否有效：0-false失效、1-true正常【当随机段超出领取数量或最高金额时失效】")
	protected Boolean validStatus;

    /**  */
	protected String createdBy;

    /** 创建时间 */
	@ApiModelProperty("创建时间")
	protected LocalDateTime createdTime;

    /** 修改时间 */
	@ApiModelProperty("修改时间")
	protected LocalDateTime modifiedTime;

	/**
	 * 构造一个空随机券信息实体对象
	 */
	public CouponTemplateRandomEntity(){
		super();
	}

	/**
	 * 依据其它对象的信息构造一个随机券信息实体对象
	 * 
	 * @param other 其它对象
	 */
	public CouponTemplateRandomEntity(CouponTemplateRandomEntity other){
		super();
     	this.id = other.id;
     	this.couponTemplateId = other.couponTemplateId;
     	this.beginFee = other.beginFee;
     	this.endFee = other.endFee;
     	this.limitMaxFee = other.limitMaxFee;
     	this.nowFee = other.nowFee;
     	this.limitMaxNum = other.limitMaxNum;
     	this.nowNum = other.nowNum;
     	this.validStatus = other.validStatus;
     	this.createdBy = other.createdBy;
     	this.createdTime = other.createdTime;
     	this.modifiedTime = other.modifiedTime;
	}


	/**
	 * 获取
	 * 
	 * @return id 
	 */
	public String getId() {
		return id;
	}
  	
	/**
	 * 设置
	 * 
	 * @param id 
	 */
	public void setId(String id) {
		this.id = id;
	}

	/**
	 * 获取券模板ID
	 * 
	 * @return couponTemplateId 券模板ID
	 */
	public String getCouponTemplateId() {
		return couponTemplateId;
	}
  	
	/**
	 * 设置券模板ID
	 * 
	 * @param couponTemplateId 券模板ID
	 */
	public void setCouponTemplateId(String couponTemplateId) {
		this.couponTemplateId = couponTemplateId;
	}

	/**
	 * 获取开始金额
	 * 
	 * @return beginFee 开始金额
	 */
	public BigDecimal getBeginFee() {
		return beginFee;
	}
  	
	/**
	 * 设置开始金额
	 * 
	 * @param beginFee 开始金额
	 */
	public void setBeginFee(BigDecimal beginFee) {
		this.beginFee = beginFee;
	}

	/**
	 * 获取结束金额
	 * 
	 * @return endFee 结束金额
	 */
	public BigDecimal getEndFee() {
		return endFee;
	}
  	
	/**
	 * 设置结束金额
	 * 
	 * @param endFee 结束金额
	 */
	public void setEndFee(BigDecimal endFee) {
		this.endFee = endFee;
	}

	/**
	 * 获取随机券总和最高金额限制
	 * 
	 * @return limitMaxFee 随机券总和最高金额限制
	 */
	public BigDecimal getLimitMaxFee() {
		return limitMaxFee;
	}
  	
	/**
	 * 设置随机券总和最高金额限制
	 * 
	 * @param limitMaxFee 随机券总和最高金额限制
	 */
	public void setLimitMaxFee(BigDecimal limitMaxFee) {
		this.limitMaxFee = limitMaxFee;
	}

	/**
	 * 获取当前已领取总金额
	 * 
	 * @return nowFee 当前已领取总金额
	 */
	public BigDecimal getNowFee() {
		return nowFee;
	}
  	
	/**
	 * 设置当前已领取总金额
	 * 
	 * @param nowFee 当前已领取总金额
	 */
	public void setNowFee(BigDecimal nowFee) {
		this.nowFee = nowFee;
	}

	/**
	 * 获取随机券总和最高数量限制
	 * 
	 * @return limitMaxNum 随机券总和最高数量限制
	 */
	public Integer getLimitMaxNum() {
		return limitMaxNum;
	}
  	
	/**
	 * 设置随机券总和最高数量限制
	 * 
	 * @param limitMaxNum 随机券总和最高数量限制
	 */
	public void setLimitMaxNum(Integer limitMaxNum) {
		this.limitMaxNum = limitMaxNum;
	}

	/**
	 * 获取当前已领取总数量
	 * 
	 * @return nowNum 当前已领取总数量
	 */
	public Integer getNowNum() {
		return nowNum;
	}
  	
	/**
	 * 设置当前已领取总数量
	 * 
	 * @param nowNum 当前已领取总数量
	 */
	public void setNowNum(Integer nowNum) {
		this.nowNum = nowNum;
	}

	/**
	 * 获取是否有效：0-false失效、1-true正常【当随机段超出领取数量或最高金额时失效】
	 * 
	 * @return validStatus 是否有效：0-false失效、1-true正常【当随机段超出领取数量或最高金额时失效】
	 */
	public Boolean getValidStatus() {
		return validStatus;
	}
  	
	/**
	 * 设置是否有效：0-false失效、1-true正常【当随机段超出领取数量或最高金额时失效】
	 * 
	 * @param validStatus 是否有效：0-false失效、1-true正常【当随机段超出领取数量或最高金额时失效】
	 */
	public void setValidStatus(Boolean validStatus) {
		this.validStatus = validStatus;
	}

	/**
	 * 获取
	 * 
	 * @return createdBy 
	 */
	public String getCreatedBy() {
		return createdBy;
	}
  	
	/**
	 * 设置
	 * 
	 * @param createdBy 
	 */
	public void setCreatedBy(String createdBy) {
		this.createdBy = createdBy;
	}

	/**
	 * 获取创建时间
	 * 
	 * @return createdTime 创建时间
	 */
	public LocalDateTime getCreatedTime() {
		return createdTime;
	}
  	
	/**
	 * 设置创建时间
	 * 
	 * @param createdTime 创建时间
	 */
	public void setCreatedTime(LocalDateTime createdTime) {
		this.createdTime = createdTime;
	}

	/**
	 * 获取修改时间
	 * 
	 * @return modifiedTime 修改时间
	 */
	public LocalDateTime getModifiedTime() {
		return modifiedTime;
	}
  	
	/**
	 * 设置修改时间
	 * 
	 * @param modifiedTime 修改时间
	 */
	public void setModifiedTime(LocalDateTime modifiedTime) {
		this.modifiedTime = modifiedTime;
	}

    public String toString() {
		return new StringBuilder().append("CouponTemplateRandomEntity{").
			append("id=").append(id).
			append(",couponTemplateId=").append(couponTemplateId).
			append(",beginFee=").append(beginFee).
			append(",endFee=").append(endFee).
			append(",limitMaxFee=").append(limitMaxFee).
			append(",nowFee=").append(nowFee).
			append(",limitMaxNum=").append(limitMaxNum).
			append(",nowNum=").append(nowNum).
			append(",validStatus=").append(validStatus).
			append(",createdBy=").append(createdBy).
			append(",createdTime=").append(createdTime).
			append(",modifiedTime=").append(modifiedTime).
			append('}').toString();
    }

	/**
	 * 复制对象
	 * 
	 * @return 复制后的新实体对象
	 */
	public CouponTemplateRandomEntity copy() {
		return new CouponTemplateRandomEntity(this);
	}

    /**  */
	public static final String COL_ID = "id";

    /** 券模板ID */
	public static final String COL_COUPON_TEMPLATE_ID = "coupon_template_id";

    /** 开始金额 */
	public static final String COL_BEGIN_FEE = "begin_fee";

    /** 结束金额 */
	public static final String COL_END_FEE = "end_fee";

    /** 随机券总和最高金额限制 */
	public static final String COL_LIMIT_MAX_FEE = "limit_max_fee";

    /** 当前已领取总金额 */
	public static final String COL_NOW_FEE = "now_fee";

    /** 随机券总和最高数量限制 */
	public static final String COL_LIMIT_MAX_NUM = "limit_max_num";

    /** 当前已领取总数量 */
	public static final String COL_NOW_NUM = "now_num";

    /** 是否有效：0-false失效、1-true正常【当随机段超出领取数量或最高金额时失效】 */
	public static final String COL_VALID_STATUS = "valid_status";

    /**  */
	public static final String COL_CREATED_BY = "created_by";

    /** 创建时间 */
	public static final String COL_CREATED_TIME = "created_time";

    /** 修改时间 */
	public static final String COL_MODIFIED_TIME = "modified_time";
}
